home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 1.iso / dist / fw_bind.idb / usr / freeware / catman / u_man / cat1 / dig.Z / dig
Text File  |  2001-04-12  |  15KB  |  309 lines

  1.  
  2. DIG(@CMD_EXT_U@)             LOCAL              DIG(@CMD_EXT_U@)
  3.  
  4. NNAAMMEE
  5.      ddiigg - send    domain name query packets to name servers
  6.  
  7. SSYYNNOOPPSSIISS
  8.      ddiigg [@@_s_e_r_v_e_r] _d_o_m_a_i_n [<_q_u_e_r_y_-_t_y_p_e>] [<_q_u_e_r_y_-_c_l_a_s_s>] [++<_q_u_e_r_y_-_o_p_t_i_o_n>]
  9.      [--<_d_i_g_-_o_p_t_i_o_n>] [_%_c_o_m_m_e_n_t]
  10.  
  11. DDEESSCCRRIIPPTTIIOONN
  12.      DDiigg (domain information groper) is    a flexible command line    tool which can
  13.      be    used to    gather information from    the Domain Name    System servers.     DDiigg
  14.      has two modes: simple interactive mode for    a single query,    and batch mode
  15.      which executes a query for    each in    a list of several query    lines. All
  16.      query options are accessible from the command line.
  17.  
  18.      The usual simple use of ddiigg will take the form:
  19.  
  20.          ddiigg @@_s_e_r_v_e_r _d_o_m_a_i_n _q_u_e_r_y_-_t_y_p_e _q_u_e_r_y_-_c_l_a_s_s
  21.  
  22.      where:
  23.  
  24.      _s_e_r_v_e_r     may be    either a domain    name or    a dot-notation Internet    ad
  25.          dress.    If this    optional field is omitted, ddiigg will attempt to
  26.          use the default name server for your machine.
  27.  
  28.          _N_o_t_e_: If a domain name    is specified, this will    be resolved
  29.          using the domain name system resolver (i.e., BIND). If    your
  30.          system    does not support DNS, you may _h_a_v_e to specify a    dot-
  31.          notation address.  Alternatively, if there is a server    at
  32.          your disposal somewhere,  all that is required    is that
  33.          _/_e_t_c_/_r_e_s_o_l_v_._c_o_n_f be present and indicate where    the default
  34.          name servers reside,  so that _s_e_r_v_e_r itself can be resolved.
  35.          See resolver(@FORMAT_EXT@) for    information on
  36.          _/_e_t_c_/_r_e_s_o_l_v_._c_o_n_f. WWAARRNNIINNGG:: Changing _/_e_t_c_/_r_e_s_o_l_v_._c_o_n_f will af
  37.          fect both the standard    resolver library and (potentially)
  38.          several programs which    use it.     As an option, the user    may
  39.          set the environment variable LOCALRES to name a file which is
  40.          to be used instead of _/_e_t_c_/_r_e_s_o_l_v_._c_o_n_f    standard resolver
  41.          (LOCALRESis specific to the ddiigg resolver and  is  not
  42.          referenced  by     the). If the LOCALRES variable    is not set or
  43.          the specified file is not readable, then _/_e_t_c_/_r_e_s_o_l_v_._c_o_n_f
  44.          will be used.
  45.  
  46.      _d_o_m_a_i_n     is the    domain name for    which you are requesting information.
  47.          See the --xx option (documented in the _O_T_H_E_R _O_P_T_I_O_N_S subsection
  48.          of this section) for convenient way to    specify    inverse    ad
  49.          dress query.
  50.  
  51.      _q_u_e_r_y_-_t_y_p_e     is the    type of    information (DNS query type) that you are re
  52.          questing. If omitted, the default is ``_a'' (T_A = _a_d_d_r_e_s_s).
  53.          The following types are recognized:
  54.  
  55.          _a     T_A        network address
  56.          _a_n_y     T_ANY        all/any information    about specified    domain
  57.          _m_x     T_MX        mail exchanger for the domain
  58.          _n_s     T_NS        name servers
  59.          _s_o_a     T_SOA        zone of authority record
  60.          _h_i_n_f_o     T_HINFO    host information
  61.          _a_x_f_r     T_AXFR        zone transfer (must    ask an authoritative
  62.                     server)
  63.          _t_x_t     T_TXT        arbitrary number of    strings
  64.  
  65.  
  66.  
  67.          (See RFC 1035 for the complete    list.)
  68.  
  69.      _q_u_e_r_y_-_c_l_a_s_s
  70.          is the    network    class requested    in the query. If omitted, the
  71.          default is ``_i_n'' (C_IN = _I_n_t_e_r_n_e_t). The following classes
  72.          are recognized:
  73.  
  74.          _i_n     C_IN        Internet class domain
  75.          _a_n_y     C_ANY        all/any class information
  76.  
  77.          (See RFC 1035 for the complete    list.)
  78.  
  79.          _N_o_t_e_: ``_A_n_y'' can be used to specify a    _c_l_a_s_s and/or a _t_y_p_e of
  80.          query.     DDiigg will parse    the first occurrence of    ``_a_n_y''    to
  81.          mean _q_u_e_r_y_-_t_y_p_e _= T_ANY. To specify _q_u_e_r_y_-_c_l_a_s_s _= C_ANY, you
  82.          must either specify ``any'' twice, or set _q_u_e_r_y_-_c_l_a_s_s using
  83.          the --cc    option (see below).
  84.  
  85.    OOTTHHEERR OOPPTTIIOONNSS
  86.  
  87.      %_i_g_n_o_r_e_d_-_c_o_m_m_e_n_t
  88.          ``%'' is used to included an argument that is simply not
  89.          parsed.  This may be useful  if running ddiigg in    batch mode.
  90.          Instead of resolving every _@_s_e_r_v_e_r_-_d_o_m_a_i_n_-_n_a_m_e    in a list of
  91.          queries, you can avoid    the overhead of    doing so, and still
  92.          have the domain name on the command line as a reference. Ex
  93.          ample:
  94.  
  95.                  ddiigg @@112288..99..00..3322 %%vveenneerraa..iissii..eedduu mmxx    iissii..eedduu
  96.  
  97.      --<_d_i_g _o_p_t_i_o_n>
  98.          ``--'' is used to specify an option which affects the opera
  99.          tion of ddiigg. The following options are    currently available
  100.          (although not guaranteed to be    useful):
  101.  
  102.          --xx _d_o_t_-_n_o_t_a_t_i_o_n_-_a_d_d_r_e_s_s
  103.                  Convenient    form to    specify    inverse    address    map
  104.                  ping.  Instead of ``ddiigg 3322..00..99..112288..iinn--
  105.                  aaddddrr..aarrppaa'', one can simply ``ddiigg --xx
  106.                  112288..99..00..3322''.
  107.  
  108.          --ff _f_i_l_e     File for ddiigg batch    mode. The file contains    a list
  109.                  of    query specifications ( ddiigg command lines)
  110.                  which are to be executed successively.  Lines be
  111.                  ginning with `;', `#', or `\n' are    ignored.  Oth
  112.                  er    options    may still appear on command line, and
  113.                  will be in    effect for each    batch query.
  114.  
  115.          --TT _t_i_m_e     Time in seconds between start of successive
  116.                  queries when running in batch mode. Can be    used
  117.                  to    keep two or more batch ddiigg commands running
  118.                  roughly in    sync.  Default is zero.
  119.  
  120.          --pp _p_o_r_t     Port number. Query    a name server listening    to a
  121.                  non-standard port number.    Default    is 53.
  122.  
  123.          --PP[_p_i_n_g_-_s_t_r_i_n_g]
  124.                  After query returns, execute a
  125.                  ping(@SYS_OPS_EXT@) command for response time
  126.                  comparison.  This rather unelegantly makes    a call
  127.                  to    the shell.  The    last three lines of statistics
  128.                  is    printed    for the    command:
  129.  
  130.                      ppiinngg --ss --sseerrvveerr__nnaammee --5566 --33
  131.  
  132.  
  133.                  If    the optional ``_p_i_n_g___s_t_r_i_n_g'' is    present, it
  134.                  replaces ``ppiinngg --ss'' in the shell command.
  135.  
  136.          --tt _q_u_e_r_y_-_t_y_p_e
  137.                  Specify type of query.  May specify either    an in
  138.                  teger value to be included    in the type field or
  139.                  use the abbreviated mnemonic as discussed above
  140.                  (i.e., _m_x _= T_MX).
  141.  
  142.          --cc _q_u_e_r_y_-_c_l_a_s_s
  143.                  Specify class of query. May specify either    an in
  144.                  teger value to be included    in the class field or
  145.                  use the abbreviated mnemonic as discussed above
  146.                  (i.e., in = C_IN).
  147.  
  148.          --kk _k_e_y_d_i_r_:_k_e_y_n_a_m_e
  149.                  Sign the query with the TSIG key named keyname
  150.                  that is in    the directory keydir.
  151.  
  152.          --eennvvssaavv     This flag specifies that the ddiigg environment (de
  153.                  faults, print options, etc.), after all of    the
  154.                  arguments are parsed, should be saved to a    file
  155.                  to    become the default environment.     This is use
  156.                  ful if you    do not like the    standard set of    de
  157.                  faults and    do not desire to include a large num
  158.                  ber of options each time ddiigg is used.  The    envi
  159.                  ronment consists of resolver state    variable
  160.                  flags, timeout, and retries as well as the    flags
  161.                  detailing ddiigg output (see below).    If the shell
  162.                  environment variable LOCALDEF is set to the name
  163.                  of    a file,    this is    where the default ddiigg environ
  164.                  ment is saved.  If    not, the file ``_D_i_G_._e_n_v'' is
  165.                  created in    the current working directory.
  166.  
  167.                  _N_o_t_e_: LOCALDEF is specific    to the ddiigg resolver,
  168.                  and will not affect operation of the standard re
  169.                  solver library.
  170.  
  171.                  Each time ddiigg is executed,    it looks for
  172.                  ``_._/_D_i_G_._e_n_v'' or the file specified by the    shell
  173.                  environment variable LOCALDEF. If such file ex
  174.                  ists and is readable, then    the environment    is re
  175.                  stored from this file before any arguments    are
  176.                  parsed.
  177.  
  178.          --eennvvsseett     This flag only affects batch query    runs. When
  179.                  ``--eennvvsseett'' is specified on a line    in a ddiigg batch
  180.                  file, the ddiigg environment after the arguments are
  181.                  parsed becomes the    default    environment for    the
  182.                  duration of the batch file, or until the next
  183.                  line which    specifies ``--eennvvsseett''.
  184.  
  185.          --[nnoo] ssttiicckk
  186.                  This flag only affects batch query    runs.  It
  187.                  specifies that the    ddiigg environment    (as read ini
  188.                  tially or set by ``--eennvvsseett'' switch) is to    be re
  189.                  stored before each    query (line) in    a ddiigg batch
  190.                  file.  The    default    ``--nnoossttiicckk'' means that    the
  191.                  ddiigg environment does not stick, hence options
  192.                  specified on a single line    in a ddiigg batch file
  193.                  will remain in effect for subsequent lines    (i.e.
  194.                  they are not restored to the ``sticky'' default).
  195.  
  196.      ++<_q_u_e_r_y_-_o_p_t_i_o_n>
  197.          ``+'' is used to specify an option to be changed in the query
  198.          packet    or to change ddiigg output    specifics. Many    of these are
  199.          the same parameters accepted by nslookup(@SYS_OPS_EXT@).  If
  200.          an option requires a parameter, the form is as    follows:
  201.  
  202.                  ++ _k_e_y_w_o_r_d [=_v_a_l_u_e]
  203.  
  204.          Most keywords can be abbreviated.  Parsing of the ``+'' op
  205.          tions    is very     simplistic -- a value must not    be separated
  206.          from its keyword by white space. The following    keywords are
  207.          currently available:
  208.  
  209.          Keyword      Abbrev.  Meaning [default]
  210.  
  211.          [nnoo] ddeebbuugg    (ddeebb)     turn on/off debugging mode [ddeebb]
  212.          [nnoo] dd22         turn on/off extra debugging mode
  213.                      [nnoodd22]
  214.          [nnoo] rreeccuurrssee    (rreecc)     use/don't use recursive lookup    [rreecc]
  215.          rreettrryy==_#       (rreett)     set number of retries to # [4]
  216.          ttiimmee==_#           (ttii)     set timeout length to # seconds [4]
  217.          [nnoo] kkoo         keep open option (implies vc) [nnookkoo]
  218.          [nnoo] vvcc         use/don't use virtual circuit [nnoovvcc]
  219.          [nnoo] ddeeffnnaammee    (ddeeff)     use/don't use default domain name
  220.                      [ddeeff]
  221.          [nnoo] sseeaarrcchh    (sseeaa)     use/don't use domain search list
  222.                      [sseeaa]
  223.          ddoommaaiinn==_N_A_M_E   (ddoo)     set default domain name to _N_A_M_E
  224.          [nnoo] iiggnnoorree    (ii)     ignore/don't ignore trunc. errors
  225.                      [nnooii]
  226.          [nnoo] pprriimmaarryy    (pprr)     use/don't use primary server [nnoopprr]
  227.          [nnoo] aaaaoonnllyy    (aaaa)     authoritative query only flag [nnooaaaa]
  228.          [nnoo] ccmmdd         echo parsed arguments [ccmmdd]
  229.          [nnoo] ssttaattss    (sstt)     print query statistics    [sstt]
  230.          [nnoo] HHeeaaddeerr    (HH)     print basic header [HH]
  231.          [nnoo] hheeaaddeerr    (hhee)     print header flags [hhee]
  232.          [nnoo] ttttlliidd    (tttt)     print TTLs [tttt]
  233.          [nnoo] ccll         print class info [nnooccll]
  234.          [nnoo] qqrr         print outgoing    query [nnooqqrr]
  235.          [nnoo] rreeppllyy    (rreepp)     print reply [rreepp]
  236.          [nnoo] qquueess    (qquu)     print question    section    [qquu]
  237.          [nnoo] aannsswweerr    (aann)     print answer section [aann]
  238.          [nnoo] aauutthhoorr    (aauu)     print authoritative section [aauu]
  239.          [nnoo] aaddddiitt    (aadd)     print additional section [aadd]
  240.          ppffddeeff             set to    default    print flags
  241.          ppffmmiinn             set to    minimal    default    print flags
  242.          ppffsseett==_#         set print flags to # (# can be
  243.                      hex/octal/decimal)
  244.          ppffaanndd==_#         bitwise and print flags with #
  245.          ppffoorr==_#             bitwise or print flags    with #
  246.  
  247.          The rreettrryy and ttiimmee options affect the retransmission strategy
  248.          used by the resolver library when sending datagram queries.
  249.          The algorithm is as follows:
  250.  
  251.                for i = 0 to retry - 1
  252.                for j = 1 to    num_servers
  253.                    send_query
  254.                    wait((time * (2**i)) / num_servers)
  255.                end
  256.                end
  257.  
  258.          (Note:    ddiigg always uses    a value    of 1 for ``num_servers''.)
  259.  
  260.    DDEETTAAIILLSS
  261.      DDiigg once required a slightly modified version of the BIND re
  262.      solver(@LIB_NETWORK_EXT@) library.     As of BIND 4.9, BIND's    resolver has
  263.      been augmented to work properly with ddiigg. Essentially, ddiigg    is a straight-
  264.      forward (albeit not pretty) effort    of parsing arguments and setting ap
  265.      propriate parameters.  DDiigg    uses resolver(@LIB_NETWORK_EXT@) routines
  266.      rreess__iinniitt(), rreess__mmkkqquueerryy(),    rreess__sseenndd() as well as accessing    the ___r_e_s
  267.      structure.
  268.  
  269. EENNVVIIRROONNMMEENNTT
  270.      LOCALRES     file to use in    place of Pa /etc/resolv.conf
  271.      LOCALDEF     default environment file
  272.  
  273.      See also the explanation of the --eennvvssaavv, --eennvvsseett, and --[nnoo] ssttiicckk op
  274.      tions, above.
  275.  
  276. FFIILLEESS
  277.      /etc/resolv.conf
  278.              initial domain    name and name server addresses
  279.      ./DiG.env         default save file for default options
  280.  
  281. SSEEEE AALLSSOO
  282.      @INDOT@named(@SYS_OPS_EXT@),  resolver(@LIB_NETWORK_EXT@),
  283.      resolver(@FORMAT_EXT@),  nslookup(@SYS_OPS_EXT@).
  284.  
  285. SSTTAANNDDAARRDDSS
  286.      RFC 1035.
  287.  
  288. AAUUTTHHOORR
  289.      Steve Hotz    hotz@isi.edu
  290.  
  291. AACCKKNNOOWWLLEEDDGGMMEENNTTSS
  292.      DDiigg uses functions    from nslookup(@SYS_OPS_EXT@) authored by Andrew
  293.      Cherenson.
  294.  
  295. BBUUGGSS
  296.      DDiigg has a serious case of "creeping featurism" -- the result of consider
  297.      ing several potential uses    during it's development.  It would probably
  298.      benefit from a rigorous diet.  Similarly, the print flags and granularity
  299.      of    the items they specify make evident their rather ad hoc    genesis.
  300.  
  301.      DDiigg does not consistently exit nicely (with appropriate status) when a
  302.      problem occurs somewhere in the resolver (NNOOTTEE::most of the    common exit
  303.      cases are handled). This is particularly annoying when running in batch
  304.      mode.  If it exits    abnormally (and    is not caught),    the entire batch
  305.      aborts; when such an event    is trapped, ddiigg    simply continues with the next
  306.      query.
  307.  
  308. 4th Berkeley Distribution    August 30, 1990                     5
  309.